package test1;

public class InnerClassDemo {
    public static void main(String[] args) {
        //2.创建成员内部类
        Goo goo = new Goo();
        Goo.Moo moo = goo.new Moo();//必须 使用goo的实例创建moo
        //3.goo创建的Moo实例可以goo的实例属性
        Goo goo1 = new Goo();
        goo1.a = 2;
        Goo.Moo moo1 = goo1.new Moo();
        System.out.println(moo.add()+","+moo1.add());
    }
}
class Goo {
    int a = 1;
    static int b = 3;
    //成员内部类：不用static说明的内部类，成员内部类与实例变量具有相同的作用域
    class Moo {
        int add() {
            System.out.println("成员内部类");
            return a+b;//成员内部类的优点，可以共享成员变量
        }
    }
}
